package cn.com.huzo.model.entities.trade;

import huzofw.model.entities.BaseEntity;
import huzofw.model.entities.IAggregateRoot;
import java.io.Serializable;
import org.apache.commons.lang3.builder.EqualsBuilder;
import org.apache.commons.lang3.builder.ToStringBuilder;

/**
 * 合同评审表明细记录实体类
 *
 * @author 吴旭
 */
public class ContractReviewLinesEntity extends BaseEntity implements Serializable, IAggregateRoot {

    private static final long serialVersionUID = 4161266261780284872L;
    private String LinesId;
    private Long HeaderId;
    private Long ProductId;
    private String StyleNo;
    private String ProductName;
    private Long ProductColourId;
    private String ProductColourName;
    private Double Quantity;
    private Double FobPrice;
    private Double UnitPrice;
    private Double FactoryCost;                   // 工厂主料
    private Double InternalCost;                  // 国内成本
    private Double CmtCost;                       // 加工费
    private Double UnitGrossProfit;
    private Double GrossProfit;
    private Double Rvat;
    private Double GrossProfitTaxRate;
    private Double InspectionFee;
    private Double BankFee;
    private Double ImportAndExportFee;
    private Double QuotaFee;
    private Double PackingFee;
    private Double OtherFee;
    private Double UnitSalesProfit;
    private Double UnitSalesProfitRate;
    private Double TotalMoqLoss;
    private String MoqemhIdea;
    private Short Rowspan;

    public String getLinesId() {
        return LinesId;
    }

    public void setLinesId(String LinesId) {
        this.LinesId = LinesId;
    }

    public Long getHeaderId() {
        return HeaderId;
    }

    public void setHeaderId(Long HeaderId) {
        this.HeaderId = HeaderId;
    }

    public Long getProductId() {
        return ProductId;
    }

    public void setProductId(Long ProductId) {
        this.ProductId = ProductId;
    }

    public String getStyleNo() {
        return StyleNo;
    }

    public void setStyleNo(String StyleNo) {
        this.StyleNo = StyleNo;
    }

    public String getProductName() {
        return ProductName;
    }

    public void setProductName(String ProductName) {
        this.ProductName = ProductName;
    }

    public Long getProductColourId() {
        return ProductColourId;
    }

    public void setProductColourId(Long ProductColourId) {
        this.ProductColourId = ProductColourId;
    }

    public String getProductColourName() {
        return ProductColourName;
    }

    public void setProductColourName(String ProductColourName) {
        this.ProductColourName = ProductColourName;
    }

    public Double getQuantity() {
        return Quantity;
    }

    public void setQuantity(Double Quantity) {
        this.Quantity = Quantity;
    }

    public Double getFobPrice() {
        return FobPrice;
    }

    public void setFobPrice(Double FobPrice) {
        this.FobPrice = FobPrice;
    }

    public Double getUnitPrice() {
        return UnitPrice;
    }

    public void setUnitPrice(Double UnitPrice) {
        this.UnitPrice = UnitPrice;
    }

    public Double getFactoryCost() {
        return FactoryCost;
    }

    public void setFactoryCost(Double FactoryCost) {
        this.FactoryCost = FactoryCost;
    }

    public Double getInternalCost() {
        return InternalCost;
    }

    public void setInternalCost(Double InternalCost) {
        this.InternalCost = InternalCost;
    }

    public Double getCmtCost() {
        return CmtCost;
    }

    public void setCmtCost(Double CmtCost) {
        this.CmtCost = CmtCost;
    }

    public Double getUnitGrossProfit() {
        return UnitGrossProfit;
    }

    public void setUnitGrossProfit(Double UnitGrossProfit) {
        this.UnitGrossProfit = UnitGrossProfit;
    }

    public Double getGrossProfit() {
        return GrossProfit;
    }

    public void setGrossProfit(Double GrossProfit) {
        this.GrossProfit = GrossProfit;
    }

    public Double getRvat() {
        return Rvat;
    }

    public void setRvat(Double Rvat) {
        this.Rvat = Rvat;
    }

    public Double getGrossProfitTaxRate() {
        return GrossProfitTaxRate;
    }

    public void setGrossProfitTaxRate(Double GrossProfitTaxRate) {
        this.GrossProfitTaxRate = GrossProfitTaxRate;
    }

    public Double getInspectionFee() {
        return InspectionFee;
    }

    public void setInspectionFee(Double InspectionFee) {
        this.InspectionFee = InspectionFee;
    }

    public Double getBankFee() {
        return BankFee;
    }

    public void setBankFee(Double BankFee) {
        this.BankFee = BankFee;
    }

    public Double getImportAndExportFee() {
        return ImportAndExportFee;
    }

    public void setImportAndExportFee(Double ImportAndExportFee) {
        this.ImportAndExportFee = ImportAndExportFee;
    }

    public Double getQuotaFee() {
        return QuotaFee;
    }

    public void setQuotaFee(Double QuotaFee) {
        this.QuotaFee = QuotaFee;
    }

    public Double getPackingFee() {
        return PackingFee;
    }

    public void setPackingFee(Double PackingFee) {
        this.PackingFee = PackingFee;
    }

    public Double getOtherFee() {
        return OtherFee;
    }

    public void setOtherFee(Double OtherFee) {
        this.OtherFee = OtherFee;
    }

    public Double getUnitSalesProfit() {
        return UnitSalesProfit;
    }

    public void setUnitSalesProfit(Double UnitSalesProfit) {
        this.UnitSalesProfit = UnitSalesProfit;
    }

    public Double getUnitSalesProfitRate() {
        return UnitSalesProfitRate;
    }

    public void setUnitSalesProfitRate(Double UnitSalesProfitRate) {
        this.UnitSalesProfitRate = UnitSalesProfitRate;
    }

    public Double getTotalMoqLoss() {
        return TotalMoqLoss;
    }

    public void setTotalMoqLoss(Double TotalMoqLoss) {
        this.TotalMoqLoss = TotalMoqLoss;
    }

    public String getMoqemhIdea() {
        return MoqemhIdea;
    }

    public void setMoqemhIdea(String MoqemhIdea) {
        this.MoqemhIdea = MoqemhIdea;
    }

    public Short getRowspan() {
        return Rowspan;
    }

    public void setRowspan(Short Rowspan) {
        this.Rowspan = Rowspan;
    }

    /**
     * {@inheritDoc}
     */
    @Override
    public boolean equals(Object o) {
        if (this == o) {
            return true;
        }
        if (!(o instanceof ContractReviewLinesEntity)) {
            return false;
        }

        final ContractReviewLinesEntity that = (ContractReviewLinesEntity) o;

        return new EqualsBuilder()
                .append(this.getLinesId(), that.getLinesId())
                .isEquals();
    }

    /**
     * {@inheritDoc}
     */
    @Override
    public int hashCode() {
        int result = 17;
        result = 31 * result + this.getLinesId().hashCode();

        return result;
    }

    /**
     * {@inheritDoc}
     */
    @Override
    public String toString() {
        return ToStringBuilder.reflectionToString(this);
    }
}
